home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2004 #2 / Amiga Plus CD - 2004 - No. 02.iso / AmigaPlus / Tools / Development / AmigaTalk / testfiles / TestNewMenu < prev    next >
Encoding:
Text File  |  2004-01-31  |  1.6 KB  |  78 lines

  1. ('   Starting TestNewMenu code...') print
  2.  
  3. )i AmigaTalk:User/UserGUI.st
  4.  
  5. intuition  <- Intuition new
  6.  
  7. ('   Setting up userGUI...') print
  8.  
  9. scr <- Screen new
  10. scr setScreenModeID: 16r40D20042
  11. scr open: 'Testing NewMenu Class:'
  12.  
  13. userGUI <- UserGUI new
  14. userGUI setScreen: scr
  15.  
  16. menuStrip <- MenuStrip new: 3
  17.  
  18. menu1 <- NewMenu new: nil
  19. menu2 <- NewMenu new: #testMenu
  20. menu3 <- NewMenu new: nil
  21.  
  22. itemType <- intuition getGadToolAttr: #NM_ITEM
  23.  
  24. menuUserData <- #( itemType 'Test NewMenu handler' #testMenu 'T' 1 )
  25.  
  26. "menuUserData at: 1 put: itemType" " Interpreter does NOT do this properly (FIXED)! "
  27.  
  28. menu1 titleMenuArray: 'PROJECT'
  29. menu2 menuItemArray: 'Test NewMenu handler' key: 'T' flags: 0 data: menuUserData
  30. menu3 fillNewMenuItemWith: (menu3 endOfMenuArray)
  31.  
  32. menu1 addedTo: menuStrip
  33. menu2 addedTo: menuStrip
  34. menu3 addedTo: menuStrip
  35.  
  36. win <- Window new: 'Select the Menu Item (or use hotKey)...'
  37.  
  38. win setFlags:  ((intuition systemTag: #WFLG_ACTIVATE) \
  39.               + (intuition systemTag: #WFLG_CLOSEGADGET))
  40.  
  41. win setIDCMPFlags:  ((intuition systemTag: #IDCMP_MENUPICK) \
  42.                    + (intuition systemTag: #IDCMP_CLOSEWINDOW))
  43.  
  44. win openOnScreen: scr
  45.  
  46. userGUI setWindow: win
  47.  
  48. menu1 registerTo: win
  49. menu2 registerTo: win
  50. menu3 registerTo: win
  51.  
  52. menuStrip attachTo: win
  53.  
  54. userGUI addMenuSelection: menu2 named: 'Test NewMenu handler'
  55.  
  56. "userGUI    addMenuHotKey: $T       to: menu2 menu"
  57.  
  58. ('   Starting the IDCMP loop...') print
  59.  
  60. scr screenToFront
  61.  
  62. userGUI startUp
  63.  
  64. scr screenToBack
  65.  
  66. ('   IDCMP loop terminated!') print
  67.  
  68. menuStrip hide
  69.  
  70. win close
  71. scr close
  72.  
  73. menu1 dispose
  74. menu2 dispose
  75. menu3 dispose
  76.  
  77. ('   Done with TestNewMenu!') print
  78.